avatar
سعید

کاربر

  • 1400/04/08
  • 0
  • 250
1400/04/08 |
backend

ایجاد categories در update-database migration

استاد سلام

من وقتی داشتم categories رو مایگریشن میزدم وقتی از دستور update-database استفاده می کنم این خطا رو ارسال میکنه:

Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
CREATE TABLE [Categories] (
    [Id] bigint NOT NULL IDENTITY,
    [Name] nvarchar(max) NULL,
    [ParentCategoryId] bigint NOT NULL,
    [InsertTime] datetime2 NOT NULL,
    [UpdateTime] datetime2 NULL,
    [IsRemoved] bit NOT NULL,
    [RemoveTime] datetime2 NULL,
    CONSTRAINT [PK_Categories] PRIMARY KEY ([Id]),
    CONSTRAINT [FK_Categories_Categories_ParentcategoryId] FOREIGN KEY ([ParentCategoryId]) REFERENCES [Categories] ([Id]) ON DELETE CASCADE

 

 

 

Introducing FOREIGN KEY constraint 'FK_Categories_Categories_ParentcategoryId' on table 'Categories' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint or index. See previous errors.


سلام

این خطا زمانی بوجود میاد که شما در جدولی که بهش ارتباط برقرار کردید داده وجود داره و میگه زمان بروزرسانی جدول نمیتونه قسمت Cascade رو ایجاد کنه

این قسمت برای اینه که اگر والد حذف بشه زیر مجموعه هم حذف بشه یا اگر کد والد تغییر کرد کدهای زیر مجموعه اونها هم بروز رسانی بشه

 

بهتره اول جدول ها رو خالی کنی بعد بروزرسانی کنی یا بری توی جدول ها و کدهای ارتباطی رو درست کنی که بفهمه ارتباط با رکوردهای زیر مجموعه و والد برقرار میشه

 


  • 1400/04/10

سلام

قسمت ON DELETE CASCADE  را بکنید ON DELETE NOACTION درست میشه



پاسخی برای این باگ ارسال کنید

لطفا کدها را درون قطعه کد ارسال نمایید

برای ارسال پاسخ باید وارد حساب کاربری خود شوید
ورود به حساب کاربری